/*
 *  This file is part of WWWPal.
 *
 *  Copyright (C) 2003  Dr. John Punin, Department of Computer Science
 *  Rensselaer Polytechnic Institute
 *
 *  WWWPal is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  WWWPal is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with Foobar; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */

#ifndef GR_WRITE_HTML_H
#define GR_WRITE_HTML_H


FILE *
assert_open_html_file(const char *name_file);

void
write_end_html_file(FILE *fp);

void
write_head_html_file(FILE *fp, const char *wtitle);

void
write_style_html_file(FILE *fp);

void
write_start_body_html_file(FILE *fp, const char *scolor);

void
write_header_html_file(FILE *fp, int num, const char *sheader);

void
write_bold_html_file(FILE *fp, const char *sbold);

void
write_break_html_file(FILE *fp);

void
write_blank_spaces_html_file(FILE *fp,int nspaces);

void
write_horizontal_rule_html_file(FILE *fp);

void
write_start_ul_html_file(FILE *fp);

void
write_end_ul_html_file(FILE *fp);

void
write_start_ol_html_file(FILE *fp);

void
write_end_ol_html_file(FILE *fp);

void
write_item_html_file(FILE *fp);

void 
write_end_body_html_file(FILE *fp);

void
write_start_a_href_html_file(FILE *fp, const char *shref);

void
write_end_a_href_html_file(FILE *fp);

void
write_start_pre_html_file(FILE *fp);

void
write_end_pre_html_file(FILE *fp);

void
write_verify_http_link(FILE *fp,const char *link,const char *value);

void
write_start_td_html_file(FILE *fp, int srows);

void
write_start_td_html_file_cols(FILE *fp, int scols);

void
write_start_td_html_file_rows_top(FILE *fp, int srows);

void
write_end_td_html_file(FILE *fp);

void
write_start_th_html_file(FILE *fp, int srows);

void
write_end_th_html_file(FILE *fp);

void
write_start_tr_html_file(FILE *fp);

void
write_start_tr_html_file_color(FILE *fp,char *scolor);

void
write_end_tr_html_file(FILE *fp);

void
write_start_table_html_file(FILE *fp, int max_level);

void
write_start_simple_table_html_file(FILE *fp);

void
write_end_table_html_file(FILE *fp);

void
write_string_html_file(FILE *fp, const char *str);

void 
write_row_data(FILE *fp, const char *svalue, int data);
void
write_td_data(FILE *fp, int data);
void
write_th_string(FILE *fp, const char *svalue);
void 
write_row_data2(FILE *fp, const char *svalue, int data1, int data2);
void
write_row_data5(FILE *fp, const char *svalue, int data1, int data2, 
		int data3, int data4, int data5);
void 
write_row_string(FILE *fp, const char *svalue, const char *sdata);
void 
write_row_string2(FILE *fp, const char *svalue, const char *sdata1, 
		  const char *sdata2);
void 
write_header_table_string(FILE *fp, const char *svalue, const char *sdata1);

void 
write_header_table_string2(FILE *fp, const char *svalue, const char *sdata1, 
			   const char *sdata2);

void
write_th_string(FILE *fp, const char *svalue);

void
write_td_string(FILE *fp, const char * value);

void
write_td_string_span_cols(FILE *fp, char *svalue,int spancols);

void
write_td_string_span_rows_top(FILE *fp, char *svalue,int span);

void
write_row_string3(FILE *fp, const char *svalue, char * value1, char * value2,
		  char * value3);

void
write_row_data3(FILE *fp, const char *svalue, int data1, int data2,int data3);

void 
write_header_table_string3(FILE *fp, const char *svalue, const char *sdata1, 
			   const char *sdata2, const char *sdata3);

void 
write_header_table_string4(FILE *fp, const char *svalue, const char *sdata1, 
			   const char *sdata2,const char *sdata3,
			   const char *sdata4);

void 
write_header_table_string5(FILE *fp, const char *svalue, const char *sdata1, 
			   const char *sdata2, const char *sdata3,
			   const char *sdata4,const char *sdata5);

void 
write_header_table_string6(FILE *fp, const char *svalue, const char *sdata1, 
			   const char *sdata2, const char *sdata3,
			   const char *sdata4,const char *sdata5,
			   const char *sdata6);

void 
write_header_table_string7(FILE *fp, const char *svalue, const char *sdata1, 
			   const char *sdata2, const char *sdata3,
			   const char *sdata4,const char *sdata5,
			   const char *sdata6,const char *sdata7);

void 
write_header_table_string8(FILE *fp, const char *svalue, const char *sdata1, 
			   const char *sdata2, const char *sdata3,
			   const char *sdata4,const char *sdata5,
			   const char *sdata6,const char *sdata7,
			   const char *sdata8);
void
write_row_string4(FILE *fp, const char *svalue, char * value1, char * value2,
		  char * value3,char *value4);

void
write_row_string5(FILE *fp, const char *svalue, const char * value1, 
		  const char * value2,
		  const char * value3,const char *value4, const char *value5);

void
write_row_num_string2(FILE *fp,const char *snum,const char *sdata1, 
		      const char *sdata2);

void
write_row_num_string4(FILE *fp,const char *snum,const char *sdata1, 
		      const char *sdata2,const char *sdata3,
		      const char *sdata4);

void
write_row_num_string3(FILE *fp,const char *snum,const char *sdata1, 
		      const char *sdata2,const char *sdata3);
void
write_row_num_string5(FILE *fp,const char *snum,const char *sdata1, 
		      const char *sdata2,const char *sdata3,
		      const char *sdata4,const char *sdata5);

void
write_row_num_string6(FILE *fp,const char *snum,const char *sdata1, 
		      const char *sdata2,const char *sdata3,
		      const char *sdata4,const char *sdata5,
		      const char *sdata6);

void
write_row_num_string7(FILE *fp,const char *snum,const char *sdata1, 
		      const char *sdata2,const char *sdata3,
		      const char *sdata4,const char *sdata5,
		      const char *sdata6,const char *sdata7);

void
write_row_num_link_title_string2(FILE *fp,const char *snum, const char *slink,
				 const char *stitle, const char *sdata1, 
				 const char *sdata2);
void
write_row_num_link_string4(FILE *fp,const char *snum, const char *slink,
			   const char *sdata1, const char *sdata2,
			   const char *sdata3,const char *sdata4);

void
write_row_num_link_title_string3(FILE *fp,const char *snum, const char *slink,
				 const char *stitle, const char *sdata1, 
				 const char *sdata2,const char *sdata3);

void
write_row_num_link_title_string3_color(FILE *fp,const char *snum, 
				       const char *slink,
				 const char *stitle, const char *sdata1, 
				 const char *sdata2,const char *sdata3,
				       char *scolor);

void
write_row_num_link_title_string7(FILE *fp,const char *snum, const char *slink,
				 const char *stitle, const char *sdata1, 
				 const char *sdata2,const char *sdata3,
				 const char *sdata4,const char *sdata5,
				 const char *sdata6,const char *sdata7);

void
write_row_num_link_title_string7_color(FILE *fp,const char *snum, 
				       const char *slink,
				 const char *stitle, const char *sdata1, 
				 const char *sdata2,const char *sdata3,
				 const char *sdata4,const char *sdata5,
				 const char *sdata6,const char *sdata7,
				       char *scolor);


void
write_row_link_title_string2(FILE *fp,const char *slink,const char *stitle,
			     const char *sdata1, const char *sdata2);

void
write_row_num_link_string2(FILE *fp,const char *snum, const char *slink,
			   const char *sdata1, const char *sdata2);

void
write_row_num_link_string3(FILE *fp,const char *snum, const char *slink,
			   const char *sdata1, const char *sdata2,
			   const char *sdata3);

void
write_row_num_link_string3_color(FILE *fp,const char *snum, const char *slink,
			   const char *sdata1, const char *sdata2,
				 const char *sdata3,char *scolor);

void
write_row_link_string2(FILE *fp,const char *slink,const char *sdata1, 
		       const char *sdata2);

void
write_td_link(FILE *fp,const char *tlink);

void
write_td_link_page(FILE *fp,const char *tlink, const char *tvalue);

void
write_td_link_page_wrap(FILE *fp,const char *tlink, const char *tvalue);

void
write_td_hyperlink(FILE *fp,const char *slink,const char *svalue, 
		   const char *tlink,const char *tvalue, 
		   const char *caption);


void
write_row_hyperlink_string2(FILE *fp,const char *slink,const char *svalue, 
			    const char *tlink,const char *tvalue, 
			    const char *caption, const char *sdata1, 
			    const char *sdata2);

void
write_row_num_hyperlink_string2(FILE *fp,const char *snum, 
				const char *slink,const char *svalue, 
			    const char *tlink,const char *tvalue, 
			    const char *caption, const char *sdata1, 
				const char *sdata2);

void
write_row_num_hyperlink_string2_color(FILE *fp,const char *snum, 
				const char *slink,const char *svalue, 
			    const char *tlink,const char *tvalue, 
			    const char *caption, const char *sdata1, 
				      const char *sdata2,char *scolor);

void
write_row_num_hyperlink_string3(FILE *fp,const char *snum, 
				const char *slink,const char *svalue, 
			    const char *tlink,const char *tvalue, 
			    const char *caption, const char *sdata1, 
				const char *sdata2, const char *sdata3);

void
write_row_num_hyperlink_string3_color(FILE *fp,const char *snum, 
				const char *slink,const char *svalue, 
			    const char *tlink,const char *tvalue, 
			    const char *caption, const char *sdata1, 
			    const char *sdata2, const char *sdata3,
				      char *scolor);
void
write_row_span_num_hyperlink_string(FILE *fp,const char *snum, 
				const char *slink,const char *svalue, 
			    const char *tlink,const char *tvalue, 
				    const char *caption, const char *sdata1,
				    int span);

void
write_row_span_num_hyperlink_string_color(FILE *fp,const char *snum, 
				const char *slink,const char *svalue, 
			    const char *tlink,const char *tvalue, 
				    const char *caption, const char *sdata1,
					  int span,char *scolor);

void
write_row_user_graph_table(FILE *fp,const char *snum, const char *suser,
			   const char *rlink, 
			   const char *elink, const char *evalue, 
			   const char *slink,const char *svalue, 
			   const char *tlink,const char *tvalue, 
			   const char *caption, const char *sdata1,
			   int span,char *scolor);

#endif
